package org.jeecg.modules.procurement.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecgframework.poi.excel.annotation.ExcelCollection;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;
import java.util.List;

/**
 * @Description: 原料采购计划单
 * @Author: jeecg-boot
 * @Date:   2024-06-06
 * @Version: V1.0
 */
@Data
@ApiModel(value="buss_material_procurement_planPage对象", description="原料采购计划单")
public class BussMaterialProcurementPlanPage {

	/**主键*/
	@ApiModelProperty(value = "主键")
    private String id;
	/**单据编号*/
	@Excel(name = "单据编号", width = 15)
	@ApiModelProperty(value = "单据编号")
    private String code;
	/**请购单ID*/
	@Excel(name = "请购单ID", width = 15)
	@ApiModelProperty(value = "请购单ID")
    private String applicationId;
	/**开始日期*/
	@Excel(name = "开始日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
	@ApiModelProperty(value = "开始日期")
    private Date startTime;
	/**结束日期*/
	@Excel(name = "结束日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
	@ApiModelProperty(value = "结束日期")
    private Date endTime;
	/**提报日期*/
	@Excel(name = "提报日期", width = 15, format = "yyyy-MM-dd")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
	@ApiModelProperty(value = "提报日期")
    private Date submissionDate;
	/**是否开启*/
	@Excel(name = "是否开启", width = 15)
	@ApiModelProperty(value = "是否开启")
    private String status;
	/**创建人*/
	@ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "创建日期")
    private Date createTime;
	/**更新人*/
	@ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
	@ApiModelProperty(value = "更新日期")
    private Date updateTime;
	/**所属部门*/
	@ApiModelProperty(value = "所属部门")
    private String sysOrgCode;

	@ExcelCollection(name="原料采购计划单明细")
	@ApiModelProperty(value = "原料采购计划单明细")
	private List<BussMaterialProcurementPlanDetailPage> bussMaterialProcurementPlanDetailList;

	@Excel(name = "原料编号", width = 15)
	@ApiModelProperty(value = "原料编号")
	private String materialCode;
	/**原料名称*/
	@Excel(name = "原料名称", width = 15)
	@ApiModelProperty(value = "原料名称")
	private String materialName;
	/**规格*/
	@Excel(name = "规格", width = 15)
	@ApiModelProperty(value = "规格")
	private String spec;
	/**计划采购*/
	@Excel(name = "计划采购", width = 15)
	@ApiModelProperty(value = "计划采购")
	private java.math.BigDecimal num;
	/**用途*/
	@Excel(name = "用途", width = 15)
	@ApiModelProperty(value = "用途")
	private String useDesc;
	/**到货日期*/
	@Excel(name = "到货日期", width = 15)
	@ApiModelProperty(value = "到货日期")
	private String arrivalDate;

	private String materialId;

	private String meUnit;

	private String detailId;

	private String supplierId;
}
